Method and system for monitoring and control of complex systems based on a programmable network processor

ABSTRACT

A method and apparatus for monitoring and control of a system is disclosed. The method and apparatus include providing a plurality of sensors, a table, and a network processor. The sensors monitor attributes of the system. The table includes a plurality of entries. Each of the entries indicates at least one action to be taken in response to a portion attributes having particular values. The network processor is coupled with the sensors and with the table. The network processor receives from the sensors a plurality of statuses for the attributes. The network processor further determines at least one entry of the entries to access based upon the statuses and accesses the at least one entry to determine a corresponding action.

FIELD OF THE INVENTION

The present invention relates to computer systems, and more particularlyto a method and system for utilizing a programmable network processorfor monitoring and control of complex systems.

BACKGROUND OF THE INVENTION

Complex systems that require monitoring and control exist in a varietyof technologies. For example, automobiles, aircraft, ships, factories,and power plants are examples of complex systems that include a largenumber elements. These numerous elements are desired to be monitored andcontrolled to ensure that the complex system operates as desired. Forexample, in a nuclear power plant, attributes of the components such asthe generation of power, temperature of various components, steampressure, water pressure, reactor temperature, rod temperature, andreactor output should be monitored to determine whether the power plantis functioning as desired or whether corrective action should be taken.

Various conventional systems might be used to monitor and controlcomplex systems. For example, U.S. Pat. No. 5,862,054 and U.S. Pat. No.5,774,645 describe systems that monitor attributes of complex systems atvarious point of the complex system. Data relating to the complex systemis forwarded to a central computer system. For example, in theconventional system of U.S. Pat. No. 5,862,054, data relating toprocessing in a wafer fabrication system is forwarded to a conventionalcentral computer system for analysis. Statistics might be collected onthe wafer fabrication system and performance of the wafer fabricationsystem improved. Similarly, the conventional system described in U.S.Pat. No. 5,774,645 fault cues are provided to a conventional centralprocessing station. The fault cues indicate the origin and nature of thefault. The central processing station can thus aid in diagnosing andcorrecting faults.

Although conventional methods and systems for diagnosing and correctingfaults exist, one of ordinary skill in the art will readily recognizethat the demands of a complex system are difficult to meet. Inparticular, the number of components of a complex system may beextremely large. Furthermore, the attributes of many of these componentsmight be desired to be monitored often. For example, some attributesmight be sampled multiple times per second. As a result, an exceedinglylarge amount of data may be provided to the conventional controlsystems. Thus, it may be difficult or impossible for conventionalsystems to analyze the data and diagnose impending failures in a timelymanner. Moreover, managers of the complex system might desire to havemore information relating to a fault. For example, raw data relating tovarious attributes around the time of occurrence and location the faultmay be desired for analysis.

Accordingly, what is needed is a system and method for more efficientlycontrolling complex systems. The present invention addresses such aneed.

SUMMARY OF THE INVENTION

The present invention provides a method and apparatus for monitoring andcontrol of a system. The method and apparatus comprise providing aplurality of sensors, a table, and a network processor. The plurality ofsensors monitors a plurality of attributes of the complex system. Thetable includes a plurality of entries. Each of the plurality of entriesindicates at least one action to be taken in response to a portion ofthe plurality of attributes having particular values. The networkprocessor is coupled with the plurality of sensors and with the table.The network processor receives from the plurality of sensors a pluralityof statuses for the plurality of attributes. The network processorfurther determines at least one entry of the plurality of entries toaccess based upon the plurality of statuses and accesses the at leastone entry to determine a corresponding action.

According to the system and method disclosed herein, the presentinvention provides an efficient mechanism for monitoring numerousattributes of systems and controlling the system based on theseattributes.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a high level diagram of one embodiment an apparatus inaccordance with the present invention for controlling a complex system.

FIG. 1B is a more detailed diagram of a preferred embodiment of anapparatus in accordance with the present invention for controlling acomplex system.

FIG. 2 is a diagram depicting a Ethernet packet.

FIG. 3 is a high-level flow chart depicting one embodiment of a methodin accordance with the present invention for controlling a complexsystem.

FIG. 4 is a more detailed flow chart depicting one embodiment of amethod in accordance with the present invention for controlling acomplex system.

FIG. 5 is a more detailed flow chart depicting one embodiment of amethod in accordance with the present invention for monitoring a complexsystem.

DETAILED DESCRIPTION OF THE INVENTION

The present invention relates to an improvement in the monitoring andcontrol of complex systems. The following description is presented toenable one of ordinary skill in the art to make and use the inventionand is provided in the context of a patent application and itsrequirements. Various modifications to the preferred embodiment will bereadily apparent to those skilled in the art and the generic principlesherein may be applied to other embodiments. Thus, the present inventionis not intended to be limited to the embodiment shown, but is to beaccorded the widest scope consistent with the principles and featuresdescribed herein.

The present invention provides a method and apparatus for monitoring andcontrol of a system. The method and apparatus comprise providing aplurality of sensors, a table, and a network processor. The plurality ofsensors monitors a plurality of attributes of the complex system. Thetable includes a plurality of entries. Each of the plurality of entriesindicates at least one action to be taken in response to a portion ofthe plurality of attributes having particular values. The networkprocessor is coupled with the plurality of sensors and with the table.The network processor receives from the plurality of sensors a pluralityof statuses for the plurality of attributes. The network processorfurther determines at least one entry of the plurality of entries toaccess based upon the plurality of statuses and accesses the at leastone entry to determine a corresponding action.

The present invention will be described in terms of a particularcomputer systems, particular network processor, and particular complexsystems. However, one of ordinary skill in the art will readilyrecognize that this method and system will operate effectively for othercomputer systems, other network processors and other complex system. Thepresent invention is also described in the context of particular sensorsand particular attributes. However, one of ordinary skill in the artwill readily recognize that the method and apparatus operate effectivelyfor other and/or additional sensors measuring other and/or additionalattributes.

The present invention is described in the context of a method foraccessing one entry of a table. However, one of ordinary skill in theart will readily recognize that multiple entries might be accessed usingthe method and system in accordance with the present invention.Similarly, the present invention is described in the context of a singlenetwork processor and a single table. However, one of ordinary skill inthe art will readily recognize that the method and system are consistentwith the use of multiple network processors and/or multiple tables.

To more particularly illustrate the method and system in accordance withthe present invention, refer now to FIG. 1A, depicting a high leveldiagram of one embodiment an apparatus 100 in accordance with thepresent invention for controlling a complex system. The apparatus 100 isfor use in a complex system, such as the examples listed above. However,the apparatus 100 and methods, described below, are applicable to othercomplex systems (not shown).

The apparatus 100 includes sensors 102, a network processor 110, and atable 120. The sensors 102 are used to monitor attributes of the complexsystem (not explicitly shown), at various points in the system. Forexample, the sensors 102 monitor attributes such as temperature,pressure, flow rates, altitude, direction, speed, or location. As can beseed from the examples above, the sensors 102 could monitor a widevariety of attributes, depending upon the complex system in which thesensors 102 are used. Thus, the sensors 102 sample the correspondingattributes at various intervals to determine the statuses of theattributes. In a preferred embodiment, the interval at which the sensors102 sample the attributes can be programmed. The sensors 102 provide thestatus of each attribute to the network processor 110. In oneembodiment, the statuses of the attribute are provided to the networkprocessor 110 are provided in packets, such as Ethernet packets.

The table 120 preferably includes a lookup table or another mechanism,such as a decision tree, for storing data. Thus, in the context of thepresent application, a table 120 includes, but is not limited to, lookuptables such as a content addressable memory (CAM) base table anddecision trees. The table 120 is used to store actions corresponding tovarious attributes of the complex system. The entries of the table 120include one or more actions to be taken in response to attributes of thecomplex system taking on certain values. The entries of the table 120are preferably indexed based upon a key. The key might be based uponvarious information, including the status of the correspondingattribute. The key may be based upon inclusion of an identification ofsensors 102 which monitors the status. In addition, the key, as well asthe corresponding action, may be based upon multiple attributes frommultiple sensors, multiple samples from a single sensor, or somecombination thereof. Different values of the key correspond to differententries of the table 120.

The network processor 110 receives the statuses from the sensors 102and, based upon the statuses, accesses one or more of the entries of thetable 120. The network processor 110 is conventionally used innetworking applications, such as switches or routers. As such, thenetwork processor 110 is capable of handling millions of packets persecond. Furthermore, a network processor 110 is typically configured toperform millions of packet lookups in a decision tree or CAM-basedtable. The network processor 110 is also typically configured to build akey using fields within the networking packets. In addition, the networkprocessor 110 is already programmable. These capabilities of the networkprocessor 110 are exploited in the context of monitoring complexsystems. Thus, a network processor, such as the IBM PowerNP NP4GS3network processor might be used for the network processor 110.

The network processor 110 is thus programmable and has a rapid tablelookup capability. The network processor 110 receives from the sensors102 statuses of the attributes of the complex system. In a preferredembodiment, the network processor 110 receives the status information inthe form of packets, such as Ethernet packets, that are assembled eitherby the sensors 102 or, in a preferred embodiment, a controller (notshown). However, in an alternate embodiment, the network processor 110can form the packets or may simply receive raw data relating to thestatuses from the sensors 102.

The network processor 110 uses the statuses to determine the entries inthe table 120 to access. Based upon the action(s) in the correspondingentries, the network processor 110 may take action or route data to asystem processor (not shown), which may take additional action. Thenetwork processor 110 preferably determines which entry to access byforming a key. The key is formed based upon the statuses of theattributes and, in a preferred embodiment, the identities and/or typesof the sensors 102 which monitor the attributes. In a preferredembodiment, the network processor 110 concatenates various fields of thepackets in order to form the key. The fields, and thus the statusinformation, that the network processor 110 uses to form the key arepreferably programmable. The network processor 110 preferably uses thekey to search the table 120. The network processor 110 accesses theentry corresponding to a value of the key that matches the value of thekey built by the network processor. Thus, the action corresponding toone or more specific conditions of the complex system can be determined.

The action stored in the table 120 and determined by the networkprocessor could include a variety of responses, including simplycontinuing normal operation. For example, the action could indicate thata warning should be issued, that the sensors 102 should monitor certainattributes more frequently or could depend upon other conditions. If theaction (termed herein a “dependent condition”) depends upon otherconditions, then data could be forwarded to a system processor forfurther analysis. In an alternate embodiment, the network processor 110could perform at least some additional analysis of the relatedconditions.

Thus, the apparatus 100 including the network processor 110 and thetable 120 can rapidly handle the volume of information obtained from thesensors 102 in monitoring and controlling the complex system.Furthermore, the apparatus 100 can rapidly determine the action to betaken in response to the statuses of the attributes taking on certainvalues. In addition, multiple statuses from one or more sensor(s) can becombined and used to search for the appropriate action in the table 120.Thus, the actions for conditions corresponding to combinations ofstatuses can be more rapidly determined. For example, in a particularcomplex system, an increase in pressure may not be significant unlessaccompanied by an increase in temperature. Using the apparatus 100, theactions for increases in both pressure and temperature can be rapidlydetermined in a single search. Such a search would be much moreefficient than sequentially testing the pressure and temperature, thendetermining the appropriate action. As a result, a more efficientmechanism for controlling the complex system based upon combinedstatuses is provided.

FIG. 1B is a more detailed diagram of a preferred embodiment of anapparatus 100′ in accordance with the present invention for controllinga complex system. Many of the components of the apparatus 100′ areanalogous to those of the system 100. Consequently, these components arelabeled similarly. For example, the apparatus 100′ includes sensors102′, network processor 110′, and table 120′, which correspond to thesensors 102, network processor 110 and table 120 of FIG. 1A. The sensors102′, network processor 110′, and table 120′ thus function in ananalogous manner to the sensors 102, network processor 110 and table 120described above in FIG. 1A. Referring back to FIG. 1B, the apparatus100′ also includes a control station 130 coupled with the networkprocessor 110′.

The sensors 102′ provide their data to the control station 130,preferably through a network. The control station 130 thus receives thestatuses of the attributes of the complex system. The control station130 encapsulates the statuses of the attributes into packets, preferablyEthernet packets. FIG. 2 depicts one such Ethernet packet 150 that thecontrol station 130 might build. The Ethernet packet 150 includes theusual header fields 152, 154, 156, 158, 160, 162, and 164. In addition,the Ethernet packet includes an information field 166 and FCS filed 168after which the Ethernet packet 150 terminates. The information fieldincludes various subfields: control 170, field1 ID 172, field1 value174, field2 ID 176, field2 value 178, field3 ID 180, field3 value 182,field4 ID 184, and field4 value 186, which can include the statuses fromone or more sensors 102′. The control station 130 forwards these packetsto the network processor 110′. In one embodiment, the control station130 is used primarily in monitoring the statuses of the complex system.In such an embodiment, the apparatus 100′ does not control components ofthe complex system. Instead, the apparatus 100′ issues warning, alarms,or other notices. Other component(s) (not shown) would control portionsof the complex system. However, in another embodiment, the apparatus100′ could actually control portions of the complex system. In such anembodiment, the control station 130 might also have other functions,such as controlling sampling rate of one or more of the sensors 102′

The network processor 110′ receives the packets from the control station130 and builds keys using various fields of the packets. The networkprocessor 110′ may utilize one or more fields of a particular packet, aswell as one or more fields of multiple packets in order to provide akey. An embedded command within the packet preferably indicates thefield(s) which the network processor 110′ is to use in building the key.The network processor 110′ then searches the table 120′ for a match tothe key, and accesses the action stored in the table 120′.

In a preferred embodiment, at least some of the actions stored inentries of the table 120′ are encoded. For example, a two-bit code couldbe used. In such an embodiment, a 00 might correspond to continuingnormal operation, a 01 may correspond to providing a warning thatoperation of the complex system is other than desired, and a 11 maycorrespond to providing an alarm that a fault has been diagnosed. Insuch an embodiment, a warning is distinguished form an alarm in that thewarning indicates that certain attributes of the complex system warrantcloser observation. An alarm indicates the existence of a fault or otherabnormal condition, particularly one which would adversely affectperformance of the complex system. However, other actions and othercodes could be used. Moreover, the encoded actions may not be explicitlydefined. Instead, the actions could be interpreted by a controlapplication (not explicitly shown), which would issue the appropriatecommands to the sensors 102 or components of the complex system, providewarnings and alarms, or take other appropriate action. Such a controlapplication might reside in the control station 130 or in anotherportion of the complex system, such as a system processor (not shown).

Thus, using the network processor 110′ and the table 120′, statusinformation from the sensors 102′ can be rapidly managed. In addition,the actions corresponding to statuses of the attributes of the complexsystem can be rapidly determined. Furthermore, as described above,multiple statuses (e.g. multiple fields in the packet) can be combinedin the key and used to search for the appropriate action in the table120′. As a result, a more efficient mechanism for controlling thecomplex system based upon combined statuses is provided. Consequently,the system 100′ can effectively monitor and control a complex system.

FIG. 3 is a high-level flow chart depicting one embodiment of a method200 in accordance with the present invention for controlling a complexsystem. In a preferred embodiment, the method 200 is implemented usingthe system 100′. Consequently, the method 200 is described in thecontext of the method 100′. However, nothing prevents the method 200from being used in another system. The method 200 preferably commencesafter the table 120′ has been provided and the actions in the entries ofthe table defined.

The network processor 110′ receives the statuses for attributes of thecomplex system from the sensors 102′, via step 202. In a preferredembodiment, the network processor 110′ receives the statuses via thecontrol station 130 in the form of an Ethernet packet, such as thepacket 150. The network processor 110′ determines the entry or entriesof the table 120′ to access based upon the plurality of statuses, viastep 204. In a preferred embodiment, step 204 is performed by thenetwork processor 110′ building a key and searching the entries of thetable 120′ for a match to the key. The entry or entries corresponding tothe match(es) are accessed, via step 206. Thus, the appropriateaction(s) are determined in step 206. Preferably, the correspondingaction(s) are taken, via step 208. Thus, using the method 200, thecomplex system can be efficiently monitored and controlled.

FIG. 4 is a more detailed flow chart depicting one embodiment of amethod 210 in accordance with the present invention for controlling acomplex system. In a preferred embodiment, the method 210 is implementedusing the system 100′. Consequently, the method 210 is described in thecontext of the method 100′. However, nothing prevents the method 210from being used in another system. The method 210 preferably commencesafter the table 120′ has been provided and the actions in the entries ofthe table defined. The method 210 is also described in the context offorming keys based upon a single packet. However, nothing prevents theuse of multiple packets in forming a key.

A status frame, or packet, is received by the network processor 110′,via step 212. The packet is preferably provided to the network processor110′ from the control station 130. The packet contains the status(es) ofone or more attributes of the complex system. The network processor 110constructs a key using selected field(s) of the packet, via step 214. Ina preferred embodiment, the fields selected are determined by a commandembedded in the packet. The network processor executes a lookup actionvia the table 120′, via step 216. As described above, the table 120′might be in the form of a CAM table or a decision tree. Consequently,step 216 executes a lookup that is appropriate for the implementation ofthe table 120′. As a result, the action(s) in the entry matching the keyis determined in step 216. Steps 218 and 222, described below, thusdepend upon the action accessed in step 216.

It is determined whether the action(s) include a dependent condition,via step 218. As previously discussed, further analysis is performedwhen a dependent condition is found. Thus, if a dependent conditionexists, then the appropriate data is forwarded to the correspondingcomponent, via step 220. Preferably, the appropriate data is forwardedto a system processor. In addition, the data forwarded could include thedependent action as well as other data such as status information fromanother time and/or other sensors. Step 202 is then returned to. If adependent condition does not exist, then it is determined whethercorrective action is to be taken, via step 222. If not, then the nextpacket may be received, via step 202. If corrective action is to betaken, then the appropriate corrective action is issued, via step 224.Thus, an alarm, warning or other action may be by the apparatus 100′ instep 224. Other action, such as an increase in the sampling frequencyused by the sensors 102′, or a change in the components of the complexsystem, such as an increase in speed, may also be taken using the step224.

FIG. 5 is a more detailed flow chart depicting one embodiment of amethod 250 in accordance with the present invention for monitoring acomplex system. In a preferred embodiment, the method 250 is implementedusing the system 100′. Consequently, the method 250 is described in thecontext of the method 100′. However, nothing prevents the method 250from being used in another system. The method 250 preferably commencesafter the table 120′ has been provided and the actions in the entries ofthe table defined. The method 250 is also described in the context offorming keys based upon a single packet. However, nothing prevents theuse of multiple packets in forming a key.

A status frame, or packet, is received by the network processor 110′,via step 252. The packet is preferably provided to the network processor110′ from the control station 130. The packet is preferably provided tothe network processor 110′ from the control station 130. The networkprocessor 110 constructs a key using selected field(s) of the packet,via step 254. In a preferred embodiment, the fields selected aredetermined by a command embedded in the packet. The network processorexecutes a lookup action via the table 120′, via step 256. As describedabove, the table 120′ might be in the form of a CAM table or a decisiontree. Consequently, step 256 executes a lookup that is appropriate forthe implementation of the table 120′. As a result, the action(s) in theentry matching the key is determined in step 256. Steps 258, 262, and266, described below, thus depend upon the action accessed in step 256.

It is determined whether the action(s) include a dependent condition,via step 258. If a dependent condition exists, then the appropriate datais forwarded to the corresponding component, via step 260. Preferably,the appropriate data is forwarded to a system processor. In addition,the data forwarded could include the dependent action as well as otherdata such as status information from another time and/or other sensors.Step 252 is then returned to. If a dependent condition does not exist,then it is determined whether an alarm condition exists, via step 262.If so, then the appropriate alarm or indication of the correct action isissued, via step 264. Step 252 is then returned to. If an alarmcondition does not exists, then it is determined whether a warningcondition exist, via step 266. As described above, a warning conditionoccurs when attributes of the complex system should be more closelymonitored, but a fault may not exist yet. If not, then the next packetmay be received, via step 202. If a warning condition exists, then theappropriate warning is issued, via step 268. Thus, an alarm, warning orother action are issued by the apparatus 100′ in steps 264 and 268,respectively.

Using the methods 200, 210, and 250, and the apparatus 100 and 100′, acomplex system can be very efficiently monitored and controlled. Thecomponents in the complex system can be monitored and the large volumeof data from sensors 102 and 102′ can be rapidly and easily managed. Theappropriate actions for various conditions in the attributes of thecomplex system can also be quickly and efficiently determined. Thus, thecomplex system can be better and more efficiently controlled.

For example, if the complex system is a nuclear power generation plant,the methods 200, 210, and 250, and the apparatus 100 and 100′ canmonitor a wide variety and large number of components. For example,pressure, temperature, and power generated at various points in thepower plant can be monitored using the sensors 102 or 102′. Thesecomponents can be controlled based on normal operation ranges forindividual components as well as combinations of components. Thesenormal operation ranges can be input into the table 120 or 120′ in theform of keys, and the appropriate actions delineated. During operation,using the features of the network processors 110 and 100′, the methods200, 210, and 250, and the apparatus 100 and 100′ can quickly determineif actions, such as opening or closing valves, are to be taken and takethe appropriate action. Similarly, the methods 200, 210, and 250, andthe apparatus 100 and 100′ could be used in navigational in complexsystems such as aircraft, spacecraft or ships. The statuses of variousattributes of the complex system, such as the speed, direction,altitude, presence of currents or winds, can be closely monitored usingthe methods 200, 210, and 250, and the apparatus 100 and 100′. Theappropriate actions determined using the methods 200, 210, and 250, andthe apparatus 100 and 100′ can be employed by the navigational systemfor improved steering of the corresponding complex system. In yetanother example, the methods 200, 210, and 250, and the apparatus 100and 100′ could be used in an industrial plant. The attributes of variousportions of the plant, including but not limited to boilers or otherautomated equipment, could be determined and the appropriate actionseasily determined using the methods 200, 210, and 250, and the apparatus100 and 100′. Thus, operators of the plant could be warned of impendingfailures and the appropriate action taken. Thus, the safety, performanceand profitability of such complex systems may be greatly improved.

A method and system has been disclosed for more efficiently monitoringand controlling a complex system. Software written according to thepresent invention is to be stored in some form of computer-readablemedium, such as memory, CD-ROM or transmitted over a network, andexecuted by a processor. Consequently, a computer-readable medium isintended to include a computer readable signal which, for example, maybe transmitted over a network. Although the present invention has beendescribed in accordance with the embodiments shown, one of ordinaryskill in the art will readily recognize that there could be variationsto the embodiments and those variations would be within the spirit andscope of the present invention. Accordingly, many modifications may bemade by one of ordinary skill in the art without departing from thespirit and scope of the appended claims.

1. A method for monitoring and control of a system comprising the stepsof: receiving in a network processor a plurality of encapsulatedstatuses in a plurality of packets for a plurality of attributes from aplurality of sensors, the plurality of sensors for monitoring theplurality of attributes of the system, wherein each of the plurality ofpackets includes an information field, the information field includes aplurality of subfields, wherein the plurality of subfields includes thestatuses of the plurality of sensors, wherein an embedded command withineach packet indicates the subfield that the network processor is to usein building a key; determining at least one entry of a plurality ofentries in a table to access based upon the plurality of statuses andusing the network processor, each of the plurality of entries indicatingat least one action to be taken in response to a portion of theplurality of attributes of the system having particular values; andaccessing the at least one entry using the network processor todetermine the at least one action.
 2. The method of claim 1 wherein theplurality of entries corresponds to a plurality of values of a key,wherein the step of determining the at least one entry further includesthe step of: determining at least one corresponding value of the keybased upon a portion of the plurality of statuses; and determining atleast one match in the plurality of entries for the at least onecorresponding value of the key.
 3. The method of claim 2 wherein the atleast one corresponding value of the key is based upon the portion ofthe plurality of statuses from separate sensors of the plurality ofsensors.
 4. The method of claim 2 wherein the at least one correspondingvalue of the key is based upon the portion of the plurality of statusesincluding more than one status from a single sensor of the plurality ofsensors.
 5. The method of claim 1 further comprising the step of:placing the plurality of statuses in a plurality of packets; andproviding the plurality of packets to the network processor.
 6. Themethod of claim 5 wherein the placing step further includes the step of:placing a portion of the statuses from separate sensors of the pluralityof sensors into a packet of the plurality of packets.
 7. The method ofclaim 5 wherein the placing step further includes the step of: placingmore than one status from a single sensor of the plurality of sensors.8. The method of claim 6 or 7 wherein the packet has a plurality ofstatus fields for storing the portion of the plurality of statuses. 9.The method of claim 8 wherein the plurality of entries corresponds to aplurality of values of a key; wherein the corresponding valued of thekey determining step further includes the step of using a portion of theplurality of status fields to determine the status of the key; andwherein the at least one match determining step further includes thestep of determining the at least one entry by determining at least onematch in the plurality of entries for the at least one correspondingvalue of the key.
 10. The method of claim 5 wherein the plurality ofentries corresponds to a plurality of values of a key, wherein the atleast one corresponding value of the key determining step furtherincludes the step of determining the at least one corresponding value ofthe key from a portion of the plurality of packets; and wherein the atleast one determining step further includes the step of using thenetwork processor to determine at least one match in the plurality ofentries for the at least one corresponding value of the key.
 11. Themethod of claim 1 wherein the corresponding action includes issuing analarm or a warning.
 12. The method of claim 1 wherein the correspondingaction includes a dependent condition and wherein the network processorprovides information to a system processor for further analysis.
 13. Themethod of claim 1 wherein the corresponding action includes continuingnormal operation.
 14. The method of claim 1 wherein the correspondingaction includes using at least one of the plurality of sensors forclosely monitoring a portion of the plurality of attributes.
 15. Themethod of claim 1 wherein the table includes a CAM table.
 16. The methodof claim 1 wherein the table includes a decision tree.
 17. The method ofclaim 1 further comprising the step of: implementing the at least oneaction.